import fetch from 'axios';

//判断是否为开发环境还是生产环境
// if (process.env.NODE_ENV === 'development') {
//     var commonUrl = 'api'
// }
//目前未做关于production的环境配置 暂且使用dev
var commonUrl = 'api'

/**
 * api请求
 * @param {string} url     请求地址
 * @param {string} method  请求方法
 * @param {string} baseURL 默认域名地址
 * @param {object} params  请求参数（GET）
 * @param {object} data    请求参数（非GET）
 */


export default ({ url, method, baseURL, params, data }) => {
    const conf = {
        url,
        method,
        baseURL: baseURL || commonUrl,
    };
    const _conf = {
        headers: {
        },
    };
    if (method.toUpperCase() === 'GET' || params) {
        _conf.params = params;
    } else {
        _conf.headers['Content-Type'] = 'application/json';
        _conf.data = JSON.stringify(data);
    }
    const req = Object.assign(conf, _conf);
    //es7 的异步函数同步调用
    //   const res = await fetch(req);
    //   return res.data
    return fetch(req)
}